package com.jvm;

/**
 * @Author: tgy
 * @Date: 2020-11-17 11:32
 */
public class StringTableDemo01 {

    public static void main(String[] args) {


//        String s1 = "a";
//        String s2 = "b";
//        String s3 = "a"+ "b"; // 编译器优化, 直接拼接成 "ab",放入字符串常量池，
//        String s4 = s1 + s2;  // 使用Stringbuilder 拼接。然后调用 toString new一个在堆中新开辟的字符串对象
//
//        String s5 = "ab";   // 把"ab" 放入常量池，之后赋值给变量s5
//
//        String s6 = s4.intern(); // 把 s4 放入字符串常量池，如果有则不放入，没有则放入，返回字符串常量的字符串
//
//        String s7 = "a" + s3;  // 使用StringBuilder 拼接
//
//
//        System.out.println(s3 == s4);
//        System.out.println(s3 == s5);
//        System.out.println(s3 == s6);
//        String x2 = new String("c") + new String("d");
//        String x1 = "cd";
//        x2.intern();
//        //11问,如果调换了[最后两行代码]的位置呢，如果是jdk1.6呢
//        System.out.println(x1 == x2);

    }
}
